約 1,839,173 件
https://w.atwiki.jp/aster-infra/pages/105.html
名前解決 DNSクライアントコマンド
https://w.atwiki.jp/sevenlives/pages/149.html
ドメイン? DNSサーバ 名前解決 MXレコード? CNAME? CNAMEレコード? 反復検索? 正引き? 逆引き? リゾルバ BIND? Next hop? ルート・ドメイン? トップレベル・ドメイン【TLD】? セカンドレベル・ドメイン【SLD】?
https://w.atwiki.jp/aerocats/pages/51.html
標準Linuxの/usr/local/bin/内にある。 スクリプト #!/bin/sh # KURO-BOX/PRO shell script common routines. # Ver 1.002007/01/17 new by Y.H. # DEFAULT_IP=192.168.11.150 ENETNAME=eth0 #setup global environment values. MTD_SHARE=`grep extra /proc/mtd| sed -e "s/ .*//"` MTD_UIMAGE=`grep uImage /proc/mtd|sed -e "s/ .*//"` MTD_ROOTFS=`grep rootfs /proc/mtd|sed -e "s/ .*//"` MTD_UBOOT=mtd0 MTD_SHARE_DEV=/dev/${MTD_SHARE} MTD_UIMAGE_DEV=/dev/${MTD_UIMAGE} MTD_ROOTFS_DEV=/dev/${MTD_ROOTFS} MTD_RBOOT_DEV=/dev/${MTD_UBOOT} MTD_UIMAGE_CHARDEV_MINORNUM=`echo ${MTD_UIMAGE_DEV}|sed -e "s/.*mtd//"|sed -e "s/.*mtdblock//"` MTD_UIMAGE_CHARDEV=/dev/mtdchar${MTD_UIMAGE_CHARDEV_MINORNUM} MTD_ROOTFS_CHARDEV_MINORNUM=`echo ${MTD_ROOTFS_DEV}|sed -e "s/.*mtd//"|sed -e "s/.*mtdblock//"` MTD_ROOTFS_CHARDEV=/dev/mtdchar${MTD_ROOTFS_CHARDEV_MINORNUM} MTD_SHARE_CHARDEV_MINORNUM=`echo ${MTD_SHARE_DEV}|sed -e "s/.*mtd//"|sed -e "s/.*mtdblock//"` MTD_SHARE_CHARDEV=/dev/mtdchar${MTD_SHARE_CHARDEV_MINORNUM} DISK1_DEV=/dev/sda DISK2_DEV=/dev/sdb DISK1_MPT=/mnt/disk1 DISK2_MPT=/mnt/disk2 MTD_MPT=/mnt/mtd RAMDISK_MPT=/mnt/ram RAMDISK_DEV=/dev/ram1 RAMDISK_SIZE=8 KERNEL_EVENT_TAIL=/proc/buffalo/kernevnt FIRST_NAND=/etc/first_boot MICONAPL=/usr/local/sbin/miconapl HEXDUMP=/usr/bin/hexdump CHANGE_TO_DEVHDD_FILE=${MTD_MPT}/ChangeMeDevHDD SCSI_MAJOR=8 SCSI1_MINOR_BASE=0 SCSI2_MINOR_BASE=16 # $1 device of check target # retval # 1 device $1 is mounted. # 0 device $1 is not mounted. IsMounted(){ MOUNTED=`grep $1 /proc/mounts` if [ "${MOUNTED}" != "" ] ; then return 1 else return 0 fi return 0 } # $1 return value of evaluate target. DispSF(){ if [ "$1" -eq 0 ] ; then echo [Success] else echo [Failed ] fi } # $1 Executing shellscript. (mainly used for rcS) # $2 Option(default is start) exec_sh(){ if [ ! x"$2" = x"" ] ; then EXEC_OPT=$2 else EXEC_OPT=start fi echo "" echo "===== Starting $1 =====" /etc/init.d/$1 ${EXEC_OPT} DispSF $? echo "" } # $1 Check target mount point. CheckMPT(){ if [ "$1" != "" ] ; then echo "Checking MPT($1) is exist or not." if [ ! -e "$1" ] ; then echo "$1 not exist. So create a directory, now." mkdir $1 -p chmod 777 $1 else echo "$1 is exist. So no need to create a directory." fi else echo "Checking MPT target is something wrong." fi } create_sysfolder(){ rm -rf ${RAMDISK_MPT} mkdir -m 777 -p ${RAMDISK_MPT} mount -t tmpfs -o mode=1777,size=${RAMDISK_SIZE}m ${RAMDISK_DEV} ${RAMDISK_MPT} if [ $? -ne 0 ] ; then echo "*** ERROR! ${RAMDISK_MPT} mount fail!!" reboot -f fi mkdir -m 777 -p /mnt/ram/tmp /mnt/ram/var/tmp /mnt/ram/var/run rm -rf /tmp /var ln -sf /mnt/ram/tmp /tmp ln -sf /mnt/ram/var /var mkdir -m 777 -p /var/lock mkdir -m 755 -p /var/empty/sshd mkdir -m 755 -p /var/lib/dhcp mkdir -m 755 -p /var/lib/nfs chown rpcuser rpcuser /var/lib/nfs mkdir -m 755 -p /var/lock/subsys mkdir -m 755 -p /var/lock/perfmon mkdir -m 755 -p /var/lock/printing mkdir -m 755 -p /var/log/hotplug mkdir -m 755 -p /var/log/samba mkdir -m 755 -p /var/log/linkstation mkdir -m 755 -p /var/run/usb mkdir -m 755 -p /var/spool ln -s /etc/cron /var/spool/cron MODEL=`grep PRODUCTNAME /proc/buffalo/firmware|sed -e "s/PRODUCTNAME=//"` echo "KUROUTOSHIKOU KUROBOX Series ${MODEL}" /etc/issue ln -sf issue /etc/issue.net rm -f /var/lock/* } # $1 target device to format Format_EXT3(){ echo "***** Starting to format $1 *****" mkfs.ext3 $1 if [ $? -eq 0 ] ; then echo "Format is succeeded without error." else return 1 exit 1 fi return 0 } # $1 target device to format. Format_XFS(){ KEY=`dd if=$1 bs=1 count=3` if [ "${KEY}" = "XFS" ] ; then . /etc/melco/info if [ "${force_format}" = "yes" ] ; then echo "Disk (or partition) is looks like already formatted." echo "If you stop format, Press Ctrl+C in 10 seconds!!!" COUNTER=10 echo -n "waiting " while [ ${COUNTER} -gt 0 ] do echo -n "." sleep 1 COUNTER=$((${COUNTER} - 1)) done echo "" echo "OK, go on formatting." else return 0 fi fi echo "***** Cleaning Disk partition information *****" dd if=/dev/zero of=$1 bs=512 count=1 echo "***** Starting to format $1 *****" mkfs.xfs $1 -f if [ $? -eq 0 ] ; then echo "Format is succeeded without error." else return 1 exit 1 fi return 0 } # $1 target device to check partition # ret 0 this is no partition disk. # ret 1 this is nand share type partition # ret 2 this is developkit type partition (maybe) IsHavePartition(){ if [ -x ${HEXDUMP} ] ; then DISK_1_PART_TAIL=`hexdump -s 446 -n 64 -e 8/1 "%02x " 2/4 "%10d " "\n" $1 | sed -n "1p"|awk {print $10} ` DISK_2_PART_TAIL=`hexdump -s 446 -n 64 -e 8/1 "%02x " 2/4 "%10d " "\n" $1 | sed -n "2p"|awk {print $10} ` DISK_3_PART_TAIL=`hexdump -s 446 -n 64 -e 8/1 "%02x " 2/4 "%10d " "\n" $1 | sed -n "3p"|awk {print $10} ` DISK_4_PART_TAIL=`hexdump -s 446 -n 64 -e 8/1 "%02x " 2/4 "%10d " "\n" $1 | sed -n "4p"|awk {print $10} ` if [ "${DISK_1_PART_TAIL}" -ne 0 -a "${DISK_2_PART_TAIL}" -eq 0 -a "${DISK_3_PART_TAIL}" -eq 0 -a "${DISK_4_PART_TAIL}" -eq 0 ] ; then return 1 elif [ "${DISK_1_PART_TAIL}" -ne 0 -a "${DISK_2_PART_TAIL}" -ne 0 -a "${DISK_3_PART_TAIL}" -ne 0 -a "${DISK_4_PART_TAIL}" -ne 0 ] ; then return 2 else return 0 fi else return 0 fi return 0 } # $1 target device to mount. # $2 target mountpoint of $1. # $3 File system of target device(default is xfs). # $4 Mounted device permission(default is 777). MountShare(){ # ret 0 this is no partition disk. # ret 1 this is nand share type partition # ret 2 this is developkit type partition (maybe) if [ "$1" = "/dev/sda" -o "$1" = "/dev/sdb" ] ; then IsHavePartition $1 RET=$? [ "${RET}" -eq 1 ] TARGET_DEV=${1}1 [ "${RET}" -eq 2 ] TARGET_DEV=${1}4 [ "${RET}" -eq 0 ] TARGET_DEV=${1} else TARGET_DEV=$1 fi IsMounted ${TARGET_DEV} if [ $? = 1 ] ; then echo "${TARGET_DEV} is already mounted." return 1 fi if [ "$3" = "" ] ; then FS=xfs else FS=$3 fi if [ "$4" = "" ] ; then PERMISSION=777 else PERMISSION=$4 fi echo "Mounting ${TARGET_DEV} on $2 as a ${FS} file system." mount -t ${FS} ${TARGET_DEV} $2 case $? in 0) chmod ${PERMISSION} $2 echo "Success." ;; *) echo "Failed." return 1 ;; esac echo "" return 0 } MiconIntEnable(){ cat /proc/buffalo/miconint_en } CreateDevFile(){ DISK_DEV=$1 case ${DISK_DEV} in ${DISK1_DEV}) SCSI_MINOR_BASE=${SCSI1_MINOR_BASE} [ ! -e ${DISK_DEV} ] mknod ${DISK_DEV} b ${SCSI_MAJOR} ${SCSI_MINOR_BASE} ;; ${DISK2_DEV}) SCSI_MINOR_BASE=${SCSI2_MINOR_BASE} [ ! -e ${DISK_DEV} ] mknod ${DISK_DEV} b ${SCSI_MAJOR} ${SCSI_MINOR_BASE} ;; *) return -1 esac SCSI_MINOR=$((${SCSI_MINOR_BASE} + 1)) DEV_NO=1 while [ ${DEV_NO} -lt 8 ] do [ ! -e ${DISK_DEV}${DEV_NO} ] mknod ${DISK_DEV}${DEV_NO} b ${SCSI_MAJOR} ${SCSI_MINOR} DEV_NO=$((${DEV_NO} + 1)) SCSI_MINOR=$((${SCSI_MINOR} + 1)) done } lock_file(){ case $1 in check) [ -f "${LOCK}" ] echo "${THIS_SCRIPT} already runnign" return 1 ;; create) echo "${THIS_SCRIPT}" $2 ${LOCK} ;; delete) rm -f ${LOCK} ;; delete_log) rm -f ${LOCK}.log ;; *) ;; esac }
https://w.atwiki.jp/textlife/pages/15.html
Joyent DNS servers DNSサーバー設定 DNS機能を有効にする レジストラでJoyent DNS serversに向けて変更する準備ができたら、 Virtualmin のそれぞれの仮想サーバのためのDNS 機能を有効にします。 Virtualminにサインイン ドロップダウンリストからサーバー設定をするドメインを指定 「Edit Virtual Server」をクリック expand the featuresセクションの、「Enabled features」をクリック 「Enable PowerDNS domain」をチェック。 「Save Virtual Server.」をクリック DNSネームサーバー レジストラ側で設定する。 dns1.joyentdns.com (67.19.231.130) dns2.joyentdns.com (67.19.174.106) dns3.joyentdns.com (70.85.232.154) dns4.joyentdns.com (207.7.108.195) Managing DNS zones なんと!チケットを発行したら、AレコードとかMXレコードも追加&変更できるそうです。 詳しくは本家で。 Default DNS zone DNSはBINDではなくPowerDNSを使っているらしい。 Host Type TTL Value @ SOA 2400 dns1.joyentdns.com dns.joyent.com 2007080101 3600 3600 604800 7200 @ NS 2400 dns1.joyentdns.com @ NS 2400 dns2.joyentdns.com @ NS 2400 dns3.joyentdns.com @ NS 2400 dns4.joyentdns.com @ MX 2400 mail.domain.com @ TXT 2400 v=spf1 a mx ?all @ A 2400 8.12.33.209 * A 2400 8.12.33.209 lists A 2400 8.12.33.209 localhost A 2400 127.0.0.1 mail A 2400 8.12.33.209 www A 2400 8.12.33.209 引用:http //wiki.joyent.com/shared kb joyent-dns
https://w.atwiki.jp/raino/pages/10.html
raino以外に使いたい人は居ないかもしれない。DNSレコード大量追加時に使用する。 仕様 1 引数で -f が指定されていた場合、ファイル"/home/user/dnsrr"を一行ずつ読み込み、IPアドレスが存在する行に対して以下を実行 IPアドレスを抽出 ホスト名を抽出 正引きデータを作成 表示 2 引数で -r が指定されていた場合、ファイル"/home/user/dnsrr"を一行ずつ読み込み、IPアドレスが存在する行に対して以下を実行 IPアドレスの第4オクテットを抽出 ホスト名を抽出、FQDN作成 逆引きデータを作成 表示 3 引数で -c が指定されていた場合、ファイル"/home/user/dnsrr"を一行ずつ読み込み、IPアドレスが存在する行に対して以下を実行 IPアドレスを抽出 digで逆引きを実行 結果表示(引けなかった場合は"xxx.xxx.xxx.xxx is no match!!"を表示) 1行目からファイル"dnsrr"を再び読み込み、IPアドレスが存在する行に対して以下を実行 ホスト名を抽出、FQDN作成 digで正引きを実行 結果表示(引けなかった場合は"xxx is no match!!"を表示) 4 引数が "-f" "-r" "-c" 以外 or 指定されていない場合は 1 2 を実行 補足 生成される正 逆引きファイルはTab=半角スペース×8の場合は見栄え良く整形されます。 使い方 1 ホームディレクトリ(/home/user)配下にファイル名"dnsrr"でhost名、IPアドレスを記述 2 seiseikun -c を実行し、登録内容に重複がないか調べる 3 seiseikun -f を実行し、正引きファイルを表示 クリップボードにコピーするなりして正引きゾーンファイルに貼り付け、シリアルを上書きする 4 seiseikun -r を実行し、逆引きファイルを表示 クリップボードにコピーするなりして逆引きゾーンファイルに貼り付け、シリアルを上書きする 5 named再起動、/var/adm/messaegsチェック 6 seiseikun -c を実行し、登録内容のチェックをする #手順3 ,4補足 ゾーンファイルをviエディタで開いた後、RRを追加したい箇所に空行を入れカーソルをそこに合わせた状態で、コマンドモードに移行し !!seiseikun {-f|-r} と打ってやると超簡単。 #! /usr/bin/perl # seiseikun use strict; use warnings; my $DATE = `date +%Y%m%d`; my $MATCHIP = (? (? f{4} )?)?(*1) ; my $MATCHHOST = [0-9a-zA-Z\-]+.?[0-9a-zA-Z\-]+|[0-9a-zA-Z\-]?\.?[0-9a-zA-Z\-]+ ; if ( @ARGV == 0 ) { $ARGV[0] = 0; } open( DNSRR, "/home/user/dnsrr" ); if ( $ARGV[0] eq "-f" ) { ffile; } elsif ( $ARGV[0] eq "-r" ) { rfile; } elsif ( $ARGV[0] eq "-c" ){ print "\nreverse lookup start\n\n"; while ( DNSRR ) { chomp; if (/.*$MATCHIP.*/) { s/($MATCHIP)//; my $IP = $1; my $DIG = `/usr/sbin/dig -x $IP ptr|grep IN PTR `; if ($DIG) { print $DIG; } else { print "########$IP is no match!!########\n"; } } } close( DNSRR ); open( DNSRR, "/home/user/dnsrr" ); print "\nforward lookup start\n\n"; while ( DNSRR ) { chomp; if (/.*$MATCHIP.*/) { s/($MATCHIP)//; /($MATCHHOST)/; my $HOST = $1; $HOST .= "\.example\.com\."; my $DIG = `/usr/sbin/dig $HOST a|grep $HOST|grep IN A `; if ($DIG) { print $DIG; } else { print "########$HOST is no match!!########\n"; } } } } else { ffile; close( DNSRR ); open(DNSRR, "/home/user/dnsrr" ); rfile; } close( DNSRR ); sub ffile { while ( DNSRR ) { chomp; if (/.*$MATCHIP.*/) { s/($MATCHIP)//; my $IP = $1; /($MATCHHOST)/; my $HOST = $1; if (length( $HOST ) = 7) { print "$HOST\t\t\tIN\tA\t$IP\t\;$DATE"; } elsif (length( $HOST ) = 15) { print "$HOST\t\tIN\tA\t$IP\t\;$DATE"; } else { print "$HOST\tIN\tA\t$IP\t\;$DATE"; } } } } sub rfile { while ( DNSRR ) { chomp; if (/.*$MATCHIP.*/) { s/($MATCHIP)//; my $IP = $1; my @OCTET = split /\./,$IP; s/\s?//g; /($MATCHHOST)/; my $HOST = $1; $HOST .= "\.example\.com\."; if (length( $HOST ) = 23) { print "$OCTET[3]\tIN\tPTR\t$HOST\t\t\t\t\t\;$DATE"; } elsif (length( $HOST ) = 31) { print "$OCTET[3]\tIN\tPTR\t$HOST\t\t\t\t\;$DATE"; } elsif (length( $HOST ) = 39) { print "$OCTET[3]\tIN\tPTR\t$HOST\t\t\t\;$DATE"; } elsif (length( $HOST ) = 47) { print "$OCTET[3]\tIN\tPTR\t$HOST\t\t\;$DATE"; } else { print "$OCTET[3]\tIN\tPTR\t$HOST\t\;$DATE"; } } } }
https://w.atwiki.jp/aerocats/pages/54.html
標準Linuxの/etc/init.dにある。 スクリプト #!/bin/sh PATH=/bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin export PATH DispSF(){ if [ $1 -eq 0 ] ; then echo [Success] else echo [Failed ] fi } MountSystemFolders(){ ##### mount system file systems.##### ##### we can t mount usbfs cause kernel don t have a usb driver statically. #### echo "===== Starting MountSystemFolders =====" echo -n "mounting procfs ... " mount -t proc proc /proc DispSF $? echo -n "mounting sysfs ... " mount -t sysfs sysfs /sys DispSF $? echo -n "mouting usbfs ... " if [ ! -e /proc/bus/usb ] ; then mkdir /proc/bus/usb -p fi mount -t usbfs usbfs /proc/bus/usb DispSF $? echo -n "remouting rootfs ... " mount -o rw,remount /dev/root / DispSF $? echo -n "mounting all devices ... " mount -a DispSF $? echo "" } BootendNotify(){ miconapl -b -a boot_end } RestoreClock(){ hwclock -l -s } echo "--- rcStart (NANDroot) ---" RestoreClock MountSystemFolders ldconfig /sbin/depmod -a . /usr/local/bin/kuro_lib for CMD in checkroot.sh Kevent.sh do exec_sh ${CMD} done for CMD in mount_share.sh sethostname.sh networking.sh httpd.sh telnet.sh inetd.sh do exec_sh ${CMD} done # file services for CMD in smb.sh do exec_sh ${CMD} done exec_sh clientUtil_servd.sh exec_sh bootcomplete.sh exec_sh FanController.sh exec_sh boss.sh /usr/local/bin/PlayBeep.sh /usr/local/music/SW_ON.msc
https://w.atwiki.jp/aerocats/pages/16.html
mountコマンドは、デバイスをLinuxの任意の地点に配置するというもの。 HDDをパーティション単位で好きな箇所にマウントする、USBメモリやCD/DVDドライブをマウントする、など、デバイスをファイルシステムとして取り扱う。 標準Linuxでのmountコマンド 概要 helpを表示してみる。 ~ # mount --help BusyBox v1.1.1 (2007.04.06-12 02+0000) multi-call binary Usage mount [flags] DEVICE NODE [-o options,more-options] Mount a filesystem. Filesystem autodetection requires /proc be mounted. Flags -a Mount all filesystems in fstab -o option One of many filesystem options, listed below -r Mount the filesystem read-only -t fs-type Specify the filesystem type -w Mount for reading and writing (default) Options for use with the "-o" flag async/sync Writes are asynchronous / synchronous atime/noatime Enable / disable updates to inode access times dev/nodev Allow use of special device files / disallow them exec/noexec Allow use of executable files / disallow them loop Ignored (loop devices are autodetected) suid/nosuid Allow set-user-id-root programs / disallow them remount Re-mount a mounted filesystem, changing its flags ro/rw Mount for read-only / read-write bind Bind a directory to an additional location move Relocate an existing mount point. There are EVEN MORE flags that are specific to each filesystem You ll have to see the written documentation for those filesystems ~ # 標準LinuxでのmountコマンドはBusyBoxが動作する。 コマンドの実行 HDD装着(未フォーマット) mountコマンドの実行結果は以下。 ~ # mount /dev/root on / type jffs2 (rw,noatime) proc on /proc type proc (rw,nodiratime) sysfs on /sys type sysfs (rw) usbfs on /proc/bus/usb type usbfs (rw) devpts on /dev/pts type devpts (rw) /dev/ram1 on /mnt/ram type tmpfs (rw) /dev/mtd3 on /mnt/mtd type jffs2 (rw,noatime) この出力を表にまとめてみる。 デバイス名 マウント先 タイプ マウントオプション /dev/root / jffs2 rw,noatime proc /proc proc rw,nodiratime sysfs /sys sysfs rw usbfs /proc/bus/usb usbfs rw devpts /dev/pts devpts rw /dev/ram1 /mnt/ram tmpfs rw /dev/mtd3 /mnt/mtd jffs2 rw,noatime
https://w.atwiki.jp/sevenlives/pages/146.html
ネームサーバ【DNSサーバ】 読み:ねーむさーば, でぃーえぬえすさーば 英語:domain name server 別名:ネーム・サーバ, BIND 意味: DNSサーバとはIPアドレスとドメイン名を結びつけるサーバ。 これによりドメイン名からネット上のアドレス、IPアドレスに変換され場所がわかるようになる。 ネームサーバはIPアドレスとドメイン名の対応表を持っておりそれによりこのような解決ができる。 しかしネームサーバがすべてのIPアドレスとの対応表を持っているのではなく階層構造になっており、上位のネームサーバから住所のように下へ向かい解決するようになっている。 ドメイン名でいえば www.sibuya.tokyo.jp とあれば最上階のネームサーバ(ルート・サーバ?)がjpと答え、その下のネームサーバがtokyoと順に解決していきたどり着く。 世界にある最上層の13台のサーバをルート・サーバという。 2011年10月28日 名前解決 IPアドレス ドメイン名 ホスト名 ドメイン・ツリー? BIND? hostsファイル? ゾーンファイル named.conf? ダイナミックDNS? Aレコード NSレコード? リカーシブコール(DNS)? マスタ・サーバ? スレーブ・サーバ? DNSキャッシュ・サーバ
https://w.atwiki.jp/aerocats/pages/56.html
/proc /proc/mounts rootfs / rootfs rw 0 0 /dev/root / jffs2 rw,noatime 0 0 proc /proc proc rw,nodiratime 0 0 sysfs /sys sysfs rw 0 0 usbfs /proc/bus/usb usbfs rw 0 0 devpts /dev/pts devpts rw 0 0 /dev/ram1 /mnt/ram tmpfs rw 0 0 /dev/sda1 /mnt/disk1 xfs rw 0 0 /dev/mtd3 /mnt/mtd jffs2 rw,noatime 0 0 /proc/cpuinfo Processor ARM926EJ-Sid(wb) rev 0 (v5l) BogoMIPS 266.24 Features swp half thumb fastmult CPU implementer 0x41 CPU architecture 5TEJ CPU variant 0x0 CPU part 0x926 CPU revision 0 Cache type write-back Cache clean cp15 c7 ops Cache lockdown format C Cache format Harvard I size 32768 I assoc 1 I line length 32 I sets 1024 D size 32768 D assoc 1 D line length 32 D sets 1024 Hardware MV-88fxx81 Revision 0000 Serial 0000000000000000 /proc/devices Character devices 1 mem 2 pty 3 ttyp 4 /dev/vc/0 4 tty 4 ttyS 5 /dev/tty 5 /dev/console 5 /dev/ptmx 7 vcs 10 misc 13 input 21 sg 90 mtd 128 ptm 136 pts 180 usb Block devices 1 ramdisk 7 loop 8 sd 9 md 31 mtdblock 65 sd 66 sd 67 sd 68 sd 69 sd 70 sd 71 sd 128 sd 129 sd 130 sd 131 sd 132 sd 133 sd 134 sd 135 sd 254 mdp /proc/mtd dev size erasesize name mtd0 00040000 00001000 "phys_mapped_flash" mtd1 00400000 00020000 "uImage" mtd2 04000000 00020000 "rootfs" mtd3 0bc00000 00020000 "extra" /proc/interrupts CPU0 0 103019 Mv Timer Tick 3 438 serial 12 0 ehci_hcd usb2 17 0 ehci_hcd usb1 21 426 eth0 29 110 mvSata 30 20704 xor_chan0 31 0 xor_chan1 34 0 MiCon Err 0 /proc/ioports 00000000-000fffff PCI IO Primary 00100000-001fffff PCI IO Primary /proc/meminfo MemTotal 126328 kB MemFree 107748 kB Buffers 0 kB Cached 9640 kB SwapCached 0 kB Active 6332 kB Inactive 6100 kB HighTotal 0 kB HighFree 0 kB LowTotal 126328 kB LowFree 107748 kB SwapTotal 0 kB SwapFree 0 kB Dirty 0 kB Writeback 0 kB Mapped 5644 kB Slab 4616 kB CommitLimit 63164 kB Committed_AS 25104 kB PageTables 244 kB VmallocTotal 385024 kB VmallocUsed 4428 kB VmallocChunk 380412 kB
https://w.atwiki.jp/skill2linux/pages/35.html
ネットワークのイメージ こんな感じを想定しませう。 BIND のインストール とりあえず、SMTP による自サーバへの配信は、Sendmail 設定系で出来るようになりましたが、 自サーバ以外へのメール配送が出来ない状態です。 ここでは、DNS のサーバの BIND を使用して、メールのリレー先を指定してあげる設定をしましょう。 とりあえず、BIND をインストールします。 yum install -y bind これで、BIND がインストールされました。 設定ファイルの編集 とりあえず、設定ファイルを作ります。 適当に、自分をマスタとして、zone を指定するでごわす。 問い合わせに制限を掛けているんで、面倒なので解除します。 当然、外部に公開する場合は、色々と考慮しないと駄目ですょ。 // // named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // server as a caching only nameserver (as a localhost DNS resolver only). // // See /usr/share/doc/bind*/sample/ for example named configuration files. // options { // listen-on port 53 { 127.0.0.1; }; // listen-on-v6 port 53 { 1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; // allow-query { localhost; }; recursion yes; dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; include "/etc/named.rfc1912.zones"; include "/etc/named.root.key"; acl localdomain { 192.168.1.0/24; 127.0.0.1; }; zone "example.localdomain" { type master; file "example.zone"; }; zone "11.168.192.in-addr.arpa" { type master; file "example.rev"; }; zone ファイルを置く zone ファイルを置きます。 とりあえず、逆引き、正引き両方作っときます。 example.zone(正引き用) $TTL 86400 @ IN SOA dns.example.localdomain. root.example.localdomain. ( 2002122001 ; serial 3600 ; refresh 1hr 900 ; retry 15min 604800 ; expire 1w 86400 ; min 24hr ) IN NS dns.example.localdomain. @ IN A 192.168.11.100 @ IN MX 10 sendmail1 dns IN A 192.168.11.100 sendmail1 IN A 192.168.11.101 sendmail2 IN A 192.168.11.102 sendmail2 IN MX 10 sendmail2 sendmail-relay IN A 192.168.11.103 example.rev(逆引き用) $TTL 86400 @ IN SOA dns.example.localdomain. root.example.localdomain. ( 2002122001 ; Serial 3600 ; Refresh 900 ; Retry 604800 ; Expire 3600 ) ; Minimum IN NS dns.example.localdomain. 100 IN PTR dns.example.localdomain. 101 IN PTR sendmail1.example.localdomain. 102 IN PTR sendamil2.example.localdomain. 103 IN PTR sendmail-relay.example.localdomain. メール設定 とりあえず、これで DNS の設定は行けるはず。 行けないのかな…。試してないけど。